In some computer storage systems, some data which are stored in nonvolatile storage devices, herein referred to as “entities”, are collections of other stored data, herein referred to as “objects”. In some of these storage systems, two or more entities can share an object. For example, a word processing document and a presentation document may both include a same picture, which also may be stored as a separate entity. In a system with many entities, multiple entities can share multiple objects.
It is generally a more efficient use of storage resources to store an object only once in the storage system. For example, if multiple entities reference the same object, then the data defining each of those entities can include a reference to stored data defining that object. However, after all entities that reference an object are deleted, it is desirable to identify the storage locations which store the data defining the previously shared object, so that those storage locations can be marked as free or available.